#include "ex6.h"
#include<string.h>
#include<stdio.h>
Caractere::Caractere()
{
     strcpy((*this).cuv," ");
}
Caractere::Caractere(char a[100])
{
     strcpy((*this).cuv,a);
}
char Caractere::getCuv(int d)
{
     char a=(*this).cuv[d];
     return a;
}
bool Caractere::operator>(Caractere S)
{
     int i=0,j=0,a=0;
     while((*this).getCuv(i)!='\0' && S.getCuv(j)!='\0' && a==0)
       {               
          if((*this).getCuv(i)<S.getCuv(j))
            {
             a=1;
             i++;
             j++;
            }
       }
     if(a==1)
        return true;
     else
        return false;
}
bool Caractere::operator>(char d[100])
{
    int i=0,j=0,a=0;
    while((*this).getCuv(i)!='\0' && j<strlen(d)&&a==0)
      {               
        if((*this).getCuv(i)<d[j])
           a=1;
           i++;
           j++;
       }
    if(a==1)
       return true;
    else
       return false;
}
bool Caractere::operator<(Caractere S)
{
    int i=0,j=0,a=0;
    while((*this).getCuv(i)!='\0' && S.getCuv(j)!='\0' && a==0)
      {               
         if((*this).getCuv(i)>S.getCuv(j))
            a=1;
            i++;
            j++;
      }
    if(a==1)
       return true;
    else
       return false;
}
bool Caractere::operator<(char d[100])
{
    int i=0,j=strlen(d),a=0;
    while((*this).getCuv(i)!='\0' && j<strlen(d)&&a==0)
      {               
        if((*this).getCuv(i)>d[j])
           a=1;
           i++;
           j++;
       }
     if(a==1)
        return true;
     else
        return false;
}
ostream& operator<<(ostream& cout,Caractere D)
{
     int i=0;
     while(D.getCuv(i)!='\0')
      {
        std::cout<<D.getCuv(i);         
        i++;
      }
     std::cout<<endl;
     return cout;
}


